package dbmodel

import (
	"time"

	"gorm.io/gorm"
)

// 网站基础配置
type BaseConfig struct {
	Model
	Type        uint   `gorm:"type:tinyint(1);not null;default:0;comment:类型" json:"type"`             // 配置类型
	ConfigName  string `gorm:"type:varchar(50);not null;default:'';comment:配置名称" json:"configName"`   // 配置名称
	ConfigKey   string `gorm:"type:varchar(50);not null;default:'';comment:配置键名" json:"configKey"`    // 配置键名
	ConfigValue string `gorm:"type:varchar(255);not null;default:'';comment:配置键值" json:"configValue"` // 配置键值
	ControlBy
}

type ControlBy struct {
	CreatedBy uint `gorm:"index;comment:创建者" json:"-"`
	UpdatedBy uint `gorm:"index;comment:更新者" json:"-"`
	DeletedBy uint `gorm:"index;comment:删除者" json:"-"`
}
type Model struct {
	ID        uint           `gorm:"primarykey" json:"id"`
	CreatedAt time.Time      `json:"createdAt"`
	UpdatedAt time.Time      `json:"updatedAt"`
	DeletedAt gorm.DeletedAt `gorm:"index" json:"-"`
}

// ListData 列表数据返回
type ListData struct {
	Count int `json:"count"`
	List  any `json:"list"`
}
